<ui:composition
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui" >

    <p:dialog id="buscadorProducto" header="Productos"
              widgetVar="dlg_producto"
              resizable="false"
              draggable="false"
              width="730" minHeight="400"
              showEffect="slide" hideEffect="slide">

        <h:panelGrid columns="2" cellspacing="5" columnClasses="colLabel,colDato" width="360" >

            <h:outputText value="Tipo de producto: " />
            <p:selectOneMenu value="#{buscadorProductoBean.tipoProducto}"
                             converter="#{conversoresInventario.tipoProducto}"
                             filter="true" filterMatchMode="contains" >
                <f:selectItem itemLabel="Todos" itemValue="" />
                <f:selectItems value="#{buscadorProductoBean.listaTipos}"
                               var="i" itemLabel="#{i.descrp}" itemValue="#{i}"/>
                <p:ajax process="@this" update="tablaProductos" listener="#{buscadorProductoBean.filtrarProductos}"/>
            </p:selectOneMenu>
       
            <h:outputText value="Descripción: " />
            <p:inputText id="txtBusqueda" value="#{buscadorProductoBean.contenido}" size="40" >
                <p:ajax event="keyup" update="tablaProductos" listener="#{buscadorProductoBean.filtrarProductos}"/>
            </p:inputText>       

        </h:panelGrid>

        <p:watermark value="Ingrese texto a buscar" for="txtBusqueda" />

        <p:dataTable id="tablaProductos"
                     value="#{buscadorProductoBean.listaProductos}" var="prd"
                     emptyMessage="#{msgs.noEncontraronProductos}"
                     filteredValue="#{buscadorProductoBean.productosFiltrados}"
                     rows="15" paginator="true" >

                <p:column headerText="Código" width="100"
                          sortBy="#{prd.codigo}"
                          style="width: 50px;" >
                    <h:outputText value="#{prd.tippro}-#{prd.codigo}" />
                </p:column>

                <p:column headerText="Descripción"
                          sortBy="#{prd.descripcion}"  >

                    <p:commandLink oncomplete="PF('dlg_producto').hide()" value="#{prd.descrp}"
                                   update="@form"
                                   process="@this"
                                   title="#{msgs.pcc_seleccionar}"
                                   actionListener="#{buscadorProductoBean.seleccionarProducto(prd)}">
                    </p:commandLink>

                </p:column>

                <p:column headerText="Seleccionar" width="70" style="text-align: center;" >

                    <p:commandButton icon="ok16" title="Seleccionar"
                                     oncomplete="PF('dlg_producto').hide()"
                                     update="@form"
                                     process="@this"
                                     actionListener="#{buscadorProductoBean.seleccionarProducto(prd)}" />

                </p:column>

            </p:dataTable>      

    </p:dialog>

</ui:composition>